// [{
//     id: 1,
//     name: "",
//     age: "",
//     tel: "",
//     grade: [100, 100, 100]

// }, {
//     id: 2,
//     name: "",
//     age: "",
//     tel: "",
//     grade: [100, 100, 100]
// }]

interface Grade {
    [prop: number]: number
}
//成绩的结构

interface stuItem {
    readonly id: number,
    name: string,
    age: number,
    tel: string,
    grade: Grade
}
//规定每条数据的形状（结构）

let stuList: stuItem[] = [{
    id: 1,
    name: " 小明",
    age: 19,
    tel: "1371111",
    grade: [100, 100, 100]
}, {
    id: 2,
    name: " 小丽",
    age: 21,
    tel: "1371111",
    grade: [100, 100, 1000]
}]

// 练习：
// let arr2 = [{

//     id: 0,
//     title: "酒精免洗手凝胶",
//     price: 100,
//     desc: "",
//     prop: [{
//         id: 1001,
//         color: "白色"
//     }, {
//         id: 1002,
//         color: "灰色"
//     }]
// }, {
//     id: 2,
//     title: "iphone13",
//     price: 80000,
//     desc: "",
//     prop: [{
//         id: 2001,
//         color: "白色"
//     }, {
//         id: 2002,
//         color: "绿色"
//     }]
// }]


interface PropItem {
    readonly id: number,
    color: string,
    [prop: string]: any
}
interface GoodItem {
    readonly id: number,
    title: string,
    price: number,
    desc: string,
    // prop:PropItem[]
    prop: Array<PropItem>
    //这两种都能定义数组
}
let goodList: GoodItem[] = [{
    id: 0,
    title: "酒精免洗手凝胶",
    price: 100,
    desc: "",
    prop: [{
        id: 1001,
        color: "白色"
    }, {
        id: 1002,
        color: "灰色"
    }]
}, {
    id: 2,
    title: "iphone13",
    price: 80000,
    desc: "",
    prop: [{
        id: 2001,
        color: "白色"
    }, {
        id: 2002,
        color: "绿色"
    }]
}]

//定义一个数据类型的时候从小到大去定义
